'\" t
.\" Copyright (c) Bruno Haible <haible@clisp.cons.org>
.\"
.\" SPDX-License-Identifier: GPL-2.0-or-later
.\"
.\" References consulted:
.\"   GNU glibc-2 source code and manual
.\"   Dinkumware C library reference http://www.dinkumware.com/
.\"   OpenGroup's Single UNIX specification
.\"      http://www.UNIX-systems.org/online.html
.\"   ISO/IEC 9899:1999
.\"
.TH putwchar 3 2024-05-02 "Linux man-pages 6.9.1"
.SH NAME
putwchar \- write a wide character to standard output
.SH LIBRARY
Standard C library
.RI ( libc ", " \-lc )
.SH SYNOPSIS
.nf
.B #include <wchar.h>
.P
.BI "wint_t putwchar(wchar_t " wc );
.fi
.SH DESCRIPTION
The
.BR putwchar ()
function is the wide-character equivalent of the
.BR putchar (3)
function.
It writes the wide character
.I wc
to
.IR stdout .
If
.I ferror(stdout)
becomes true, it returns
.BR WEOF .
If a wide character
conversion error occurs, it sets
.I errno
to
.B EILSEQ
and returns
.BR WEOF .
Otherwise, it returns
.IR wc .
.P
For a nonlocking counterpart, see
.BR unlocked_stdio (3).
.SH RETURN VALUE
The
.BR putwchar ()
function returns
.I wc
if no error occurred, or
.B WEOF
to indicate an error.
.SH ATTRIBUTES
For an explanation of the terms used in this section, see
.BR attributes (7).
.TS
allbox;
lbx lb lb
l l l.
Interface	Attribute	Value
T{
.na
.nh
.BR putwchar ()
T}	Thread safety	MT-Safe
.TE
.SH STANDARDS
C11, POSIX.1-2008.
.SH HISTORY
POSIX.1-2001, C99.
.SH NOTES
The behavior of
.BR putwchar ()
depends on the
.B LC_CTYPE
category of the
current locale.
.P
It is reasonable to expect that
.BR putwchar ()
will actually write
the multibyte sequence corresponding to the wide character
.IR wc .
.SH SEE ALSO
.BR fputwc (3),
.BR unlocked_stdio (3)
